{ "cells": [ { "cell_type": "markdown", "source": [ "# Complex Sensitive Features\n", "\n", "The [Simple Pipeline notebook](./Simple Pipeline.ipynb) covered the basic use of the `fairret` library. Now, we'll dive a bit deeper into the sensitive features tensor, including a mix of discrete and continuous features.\n", "\n", "We'll skim over the data loading and model definition this time." ], "metadata": { "collapsed": false }, "id": "4177da6e00f826" }, { "cell_type": "markdown", "source": [ "## Data prep" ], "metadata": { "collapsed": false }, "id": "2336f02f615afcb1" }, { "cell_type": "code", "execution_count": 1, "outputs": [], "source": [ "from folktables import ACSDataSource, ACSIncome, generate_categories\n", "\n", "data_source = ACSDataSource(survey_year='2018', horizon='1-Year', survey='person')\n", "data = data_source.get_data(states=[\"CA\"], download=True)\n", "definition_df = data_source.get_definitions(download=True)\n", "categories = generate_categories(features=ACSIncome.features, definition_df=definition_df)\n", "df_feat, df_labels, _ = ACSIncome.df_to_pandas(data, categories=categories, dummies=True)" ], "metadata": { "collapsed": false, "ExecuteTime": { "end_time": "2024-07-23T15:06:03.074297800Z", "start_time": "2024-07-23T15:05:47.737499700Z" } }, "id": "5aad391248c4779d" }, { "cell_type": "markdown", "source": [ "We'll consider three types of sensitive features: SEX (binary), RAC1P (categorical), and AGEP (continuous).\n", "\n", "Their values look like this:" ], "metadata": { "collapsed": false }, "id": "547a8ba4a90a4e1b" }, { "cell_type": "code", "execution_count": 2, "outputs": [ { "data": { "text/plain": " AGEP SEX_Female SEX_Male RAC1P_Alaska Native alone \\\n0 30 False True False \n1 21 False True False \n2 65 False True False \n3 33 False True False \n4 18 True False False \n\n RAC1P_American Indian alone \\\n0 False \n1 False \n2 False \n3 False \n4 False \n\n RAC1P_American Indian and Alaska Native tribes specified; or American Indian or Alaska Native, not specified and no other races \\\n0 False \n1 False \n2 False \n3 False \n4 False \n\n RAC1P_Asian alone RAC1P_Black or African American alone \\\n0 False False \n1 False False \n2 False False \n3 False False \n4 False False \n\n RAC1P_Native Hawaiian and Other Pacific Islander alone \\\n0 False \n1 False \n2 False \n3 False \n4 False \n\n RAC1P_Some Other Race alone RAC1P_Two or More Races RAC1P_White alone \n0 True False False \n1 False False True \n2 False False True \n3 False False True \n4 False False True ", "text/html": "
\n | AGEP | \nSEX_Female | \nSEX_Male | \nRAC1P_Alaska Native alone | \nRAC1P_American Indian alone | \nRAC1P_American Indian and Alaska Native tribes specified; or American Indian or Alaska Native, not specified and no other races | \nRAC1P_Asian alone | \nRAC1P_Black or African American alone | \nRAC1P_Native Hawaiian and Other Pacific Islander alone | \nRAC1P_Some Other Race alone | \nRAC1P_Two or More Races | \nRAC1P_White alone | \n
---|---|---|---|---|---|---|---|---|---|---|---|---|
0 | \n30 | \nFalse | \nTrue | \nFalse | \nFalse | \nFalse | \nFalse | \nFalse | \nFalse | \nTrue | \nFalse | \nFalse | \n
1 | \n21 | \nFalse | \nTrue | \nFalse | \nFalse | \nFalse | \nFalse | \nFalse | \nFalse | \nFalse | \nFalse | \nTrue | \n
2 | \n65 | \nFalse | \nTrue | \nFalse | \nFalse | \nFalse | \nFalse | \nFalse | \nFalse | \nFalse | \nFalse | \nTrue | \n
3 | \n33 | \nFalse | \nTrue | \nFalse | \nFalse | \nFalse | \nFalse | \nFalse | \nFalse | \nFalse | \nFalse | \nTrue | \n
4 | \n18 | \nTrue | \nFalse | \nFalse | \nFalse | \nFalse | \nFalse | \nFalse | \nFalse | \nFalse | \nFalse | \nTrue | \n